跳到主要内容

198 打家劫舍

https://leetcode.cn/leetbook/read/top-interview-questions-easy/xnq4km/

https://leetcode.cn/problems/house-robber/description/

cost: 8m9s

class Solution {
public:
int rob(vector<int>& nums) {
if (nums.size() == 1) {
return nums[0];
}
int r1 = nums[0], r2 = std::max(nums[0], nums[1]);
int r = std::max(r1, r2);
for (int i = 2; i < nums.size(); i++) {
r = std::max(r1 + nums[i], r2);
r1 = r2;
r2 = r;
}
return r;
}
};
  • 时间复杂度:O(n)
  • 空间复杂度:O(n)